package zx.x.modules.app.dao;

import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestParam;
import zx.x.modules.app.dto.OrderDto;
import zx.x.modules.app.entity.OrderEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import zx.x.modules.app.vo.OrderVo;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

/**
 * 
 * 
 * @author x
 * @email x
 * @date 2022-10-13 09:55:21
 */
@Mapper
public interface OrderDao extends BaseMapper<OrderEntity> {
	// 订单明细
	OrderVo selectOrderDetailed(OrderDto dto);
	// 订单列表
	List<OrderVo> selectOrderDetailedList(OrderDto dto);
	int getListTotal(OrderDto dto);

	// 订单明细 餐饮
	OrderVo selectCyOrderDetailed(OrderDto dto);

	// 后台用 订单列表
	List<OrderVo> orderList(OrderDto dto);

	// 订单明细 文创
	OrderVo selectWcOrderDetailed(OrderDto dto);
	// 订单明细 导游
	OrderVo selectDyOrderDetailed(OrderDto dto);
	// 每月收入 按年查询
	List<Map<Integer,BigDecimal>> queryProfit(OrderDto dto);

	// 每月收入 按年查询
	List<Map<Integer, BigDecimal>> queryProfitB(OrderDto dto);
	// 订单总数
	List<Map<Integer, Long>> queryOrderCount(OrderDto dto);

	// 完成订单数量
	Integer queryWcOrder(String year);

	// 退款数量
	Integer queryTkOrder(OrderDto dto);

	// 文创商品数量
	Integer queryWcSl(OrderDto dto);

	// 注册商家数
	Integer queryZcSjCount(OrderDto dto);

	// 注册用户
	Integer queryZcYh(OrderDto dto);

	// 评论条数
	Integer queryPlTs(OrderDto dto);

	// 投诉条数
	Integer queryTsTs(OrderDto dto);

	// 下坠收益图 酒店收益
	List<OrderVo> queryXzSy(OrderDto dto);

	// 下坠收益图 文创数量
	List<OrderVo> queryXzWcSl(OrderDto dto);

	// 下坠收益图 微山岛门票
	OrderVo queryXzmpSl(OrderDto dto);

	// 下坠收益图 荷园画舫船票
	OrderVo queryXzHyhfcp(OrderDto dto);

	// 下坠收益图 大官画舫船票
	OrderVo queryXzDghfcp(OrderDto dto);
}
